Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

247
Visualizações
Sigue recibiendo "No se encontraron firmas que coincidan con la firma esperada para la carga útil". para el webhook de Stripe (node.js)
app.use( express.json({ verify: (req, res, buf) => { req.rawBody = buf.toString(); }, }), ); app.post('/webhook', async (req, res, next) => { const sig = req.headers['stripe-signature']; let event; try { event = stripe.webhooks.constructEvent(req.rawBody, sig, endpoint_secret); } catch (err) { return console.log(err) } if (event.type === 'invoice.payment_succeeded') { //... } res.send(); });

Intenté seguir este enlace pero seguí obteniendo express.raw is not a function , también probé esto:

 app.use((req, res, next) => { if (req.originalUrl === '/webhook') { next(); } else { express.json()(req, res, next); } });

Y todavía tengo el mismo error, realmente agradecería si pudiera obtener ayuda.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Estoy usando Firebase Cloud Functions como mi API de webhook, así:

 import webhook_app_creator from "express"; import cors from "cors"; // This example uses Express to receive webhooks //the Cloud Function calls the webhook_app export const webhook_app = webhook_app_creator(); // The Firebase Admin SDK to access Cloud Firestore. //const cors = require("cors"); // Automatically allow cross-origin requests webhook_app.use(cors({ origin: true })); // build multiple CRUD interfaces: webhook_app.post("/direct", async (request, response) => { //send the response early - the only valid response is "received" await commonHandler(request, response, endpointDirectSecret); response.json({ received: true }); }); webhook_app.post("/connect", async (request, response) => { //send the response early - the only valid response is "received" await commonHandler(request, response, endpointSecret); response.json({ received: true }); }); const commonHandler = async (request, response, secret) => { const sig = request.headers["stripe-signature"]; try { request.fullEvent = stripe.webhooks.constructEvent( request.rawBody, sig, secret ); } catch (err) { logger(`Webhook Error: ${err.message}`); return; } return queue_event(request.fullEvent); };

La función de la nube no podría ser más sencilla:

 //import functions from "firebase-functions"; import { functions, webhook_app } from "../../../../services"; // Expose Express API as a single Cloud Function: export default functions.https.onRequest(webhook_app);
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda